home *** CD-ROM | disk | FTP | other *** search
/ Resource Library: Multimedia / Resource Library: Multimedia.iso / utils / sound / players / amiga / stp / stp.doc < prev    next >
Encoding:
Text File  |  1993-01-11  |  14.0 KB  |  415 lines

  1. ******************************************************************************
  2. ***                                       ***
  3. ***                        D.E.R. ST-Player V1.23               ***
  4. ***                                       ***
  5. ******************************************************************************
  6. ***                                       ***
  7. ***                                       ***
  8. ***    Implemented by:      Wolfgang BREYHA                   ***
  9. ***                Gro▀er Ring 42                   ***
  10. ***                1130 VIENNA                       ***
  11. ***                AUSTRIA                       ***
  12. ***                                       ***
  13. ***                                       ***
  14. ******************************************************************************
  15. ***                                       ***
  16. ***    This Program is FREEWARE and it may be freely distributed if:       ***
  17. ***                                       ***
  18. ***    - The Program, it's Icon and the .doc-Files are all copied       ***
  19. ***      together                               ***
  20. ***    - No Changes (except crunching) are made without           ***
  21. ***      MY permission!!!                           ***
  22. ***                                       ***
  23. ******************************************************************************
  24. ***                                       ***
  25. ***                                       ***
  26. ***    Come to:             D.E.R. Computer-Club               ***
  27. ***                Stiegerg. 5/1                   ***
  28. ***                1150 VIENNA                       ***
  29. ***                AUSTRIA                       ***
  30. ***                                       ***
  31. ***                                       ***
  32. ******************************************************************************
  33.  
  34. Before you use Player please read this:
  35. ---------------------------------------
  36.  
  37. I have worked almost 2╜ years on this code and i think it's a very nice
  38. program. So I have a little request! I don't want to earn any money with my 
  39. Player, because I have written it for fun and for my own use, 
  40. but please LET ME KNOW, IF YOU FIND SOME BUGS!
  41.  
  42. If you really want to send me some money, then do it! I'll take it, and it
  43. makes no difference how much! Maybe I'm the first Freeware-Coder, who earns
  44. millions with his program. So help me being the first one and send only
  45. sums bejond one million US-Dollar!!
  46.  
  47. If you have trouble with a module please sent me a disk with it!
  48. You'll get it back with a new version of the CD-Player!!
  49.  
  50. After I've got my A2000 with A2630, Kick 2.0 and ECS, I've tried to fix the
  51. problems with Cache, Kick 2.0, Workbench 2.1 and all the other troubles with
  52. this fucking fast machine!!
  53.  
  54. Version 1.1 is the first released Version. V1.0 was spread internal only!!
  55. But who knows?! Perhaps you have a copy of 1.0!?! 
  56.  
  57. Needed Hardware:
  58. ----------------
  59.  
  60. Any Amiga, at least Kick 1.2 and a very good stereo amplifier!!!!
  61.  
  62. Needed Software:
  63. ----------------
  64.  
  65. Many Soundtracker-modules!!
  66. If you use MachIII please read the 'tactical hints using Player'!!!
  67.  
  68. Short discription:
  69. ------------------
  70.  
  71. D.E.R. ST-Player is a Soundtracker-Moduleplayer with some special features!
  72.  
  73. - 'Fire and Forget'-System (you will see what I mean)
  74. - fantastic Channel-Analyser!
  75. - short code (written in 100% assembler)
  76. - Player makes an own Process!!!
  77. - Player is full multitasking-compatible (except allocation of audio-cannels!)
  78. - Player works with 1(and more)MByte chipmem! (Ok, that's a feature of Kick1.3!)
  79. - Player should work on 680x0 processor cards!!
  80. - plays Soundtracker V2.0-V2.6, Noisetracker V1.0-V2.0 and
  81.     Protracker  -V1.1B Modules
  82. - If the screen is in background Player needs no CPU-Time!(Except Playroutine!!)
  83. - full filtercontrol
  84. - Position- and Notecontrol
  85. - Volumecontrol
  86. - NonStop loading
  87. - programmable
  88. - also handles PP20- and FileImploder-files!!
  89.   since V1.22 also XPK-files
  90. - Start from CLI and Workbench possible!!
  91. - (FOR EXPERIENCED USERS ONLY!!: Player is able to run objectmodules)
  92.  
  93. Usage:
  94. ------
  95.  
  96. STP [DIR-Name | Module-Name] [-m] [-sxxx] [-r] [-n] [-j] [-a] [?]
  97.  
  98.  
  99.  
  100. Instruction:
  101. ============
  102.  
  103. Start from CLI:
  104. ---------------
  105.  
  106. Start Player with or without options. If no arguments are given, Player
  107. has following defaults:
  108.  
  109. - Player searches the File ENV:PlayerDir. There you can save the directory
  110.   where the modules are stored. If the file doesn't exist ->
  111. - default directory is 'ST-00:modules'
  112. - Player takes as much memory as he needs or he can catch.
  113. - the songs are played alphabetically (A-Z)
  114. - Player dosen't looks for 'mod.'-files only
  115. - Player loads the next song when the current is finished
  116. - The 'B'-Cmd(Position-Jmp) of ST is enabled
  117.  
  118. Options:
  119.    ?    -> Shows helpscreen!!
  120.  
  121.   -m    -> Player takes only files beginning with 'mod.' (not case-sensitive!!!)
  122.  
  123.   -sxxx -> Player uses only that amount of chipmem you have selected.
  124.        ('xxx' means the amount in KByte!!!! (xxx*1024=amount in Bytes!))
  125.            Songs longer than 'xxx'-KByte won't be loaded.
  126.  
  127.   -r    -> Player will randomize the sequence.
  128.  
  129.   -j    -> disables the Position-Jump command from ST.
  130.        (Very nice option for songs with a endless loop)
  131.  
  132.   -n    -> Player tries to load the next song if the current has 3 patterns
  133.            left to play. It only works if you have enough Fast-Mem!!
  134.  
  135.   -d    -> Switches the Mode-Button to On-position
  136.  
  137. since V1.1:
  138.   -f    -> Switches Auto-Fade On
  139.  
  140.  
  141. You can start Player also with a filename. Then Player switches 'Repeat' on and
  142. disables the 'Prev' and 'Next'-gadgets!!!
  143.  
  144.  
  145.  
  146. Start from Workbench:
  147. ---------------------
  148.  
  149. You can define a tooltype called 'SONGDIR'. Player loads all songs in this
  150. directory!!!
  151. 1. Click the Player-Icon once
  152. 2. Select 'Info' in the Workbench-Menu
  153. 3. Click on 'ADD' in the 'TOOL TYPES'-Bar
  154. 4. Type 'SONGDIR=' and the full directory-name you want. e.g.:'dh1:modules'
  155.    'modules' only is not enough!!!!
  156. 5. Now click on 'save'
  157. 6. click the Player-Icon once more and enjoy the music!!!
  158.  
  159. If you didn't spezify a SONGDIR-Tooltype, Player searches also for the 
  160. 'ENV:PlayerDir'-File. If available he uses it automatically!
  161.  
  162. I've included some other Tooltypes, too!! Defaults in ().
  163.  
  164. RANDOM   -> ON/(OFF);          e.g.:'RANDOM=ON';
  165. ANALYZER -> (ON)/OFF;
  166. NONSTOP  -> ON/(OFF);
  167. NOPOSJMP -> ON/(OFF);
  168. MODONLY  -> ON/(OFF);
  169.  
  170. MAXCHIP : sets maximum usage of CHIP-RAM!!
  171.       e.g.:'MAXCHIP=200' -> use 200K maximum
  172.  
  173. since V1.1:
  174. AUTOFADE -> ON/(OFF);
  175.  
  176.  
  177. While Player is running:
  178. ------------------------
  179.  
  180. If no ENV-File and no Dir-name was given, you first must turn the Player on!!
  181. Then Player asks you for a directory-path and reads this directory.
  182. Since V1.1 I use the ASL-Request (Kick 2.0 only)
  183.  
  184. Now Player loads the first module. (Window shows 'loading Song...')
  185.  
  186. Then Player starts playing.......
  187.  
  188. Now you have the following possibilities:
  189.  
  190. Filter-control:
  191. ---------------
  192. These are the two switches on the right side from the Volume-control.
  193.  
  194.         On        Auto   <- Function if Switch is pressed
  195.      Switch ->    ++   ||    ++    <- Switch    
  196.         Off      Manual  <- Function if Switch is released
  197.              ^
  198.              Lamp
  199.  
  200. In the 'Manual'-position (default) the 'E'-command from Soundtracker is
  201. ignored (but internal stored!!) and the Filter is set by the on/off-switch.
  202.  
  203. If switched to 'Auto' the filter is set as given from the last ST-command.
  204. The other switch is now disabled and the filtercontrol is given back to the
  205. playroutine!!
  206.  
  207. Position- and Note-control:
  208. ---------------------------
  209. Below the display you can notice two pairs of gadgets. ( < > )
  210. The left pair controls the position and the right pair controls the note.
  211. The position-gadgets have a little delay!!
  212. Try it and you will know how to use them.
  213.  
  214. Volume-control:
  215. ----------------
  216. With the proportinal gadget you can control the volume.
  217.  
  218. Song-control:
  219. --------------
  220. On the right side of the Player are four gadgets.
  221. |<,>|   : Load next,previous song in sequence.
  222. Stop    : Will stop playing. Now you can try to open the Player.
  223. Play    : Play/Pause toggle!
  224.  
  225. Below the display you notice two other switches:
  226.  
  227. RepS    : Repeat the song. As long as Repeat is highlighted in the display
  228.           Player repeats the song.
  229. Select  : Klick on it. Now you can see a '>' in front of the current song.
  230.           Use the |< and >| gadgets to select a song.
  231.       Since V1.1 this buttons are repeated in this case!
  232.           If you have found the right name press the play-gadget and Player
  233.           reads the song at once.
  234.  
  235.  
  236. Sequence-control:
  237. ------------------
  238. Player is full programmable.
  239.  
  240. Press the "Prog"-gadget
  241. You are now in the Program-Mode. (shown in the display!!)
  242. Choose a song with the |< and >| gadgets.
  243. Now you have the following possibilities:
  244. 'Prog'  : Toggles between programmed and cleared-status.
  245.       stored in the sequence -> you see 'xx P'<- Nr. in the sequence
  246.           cleared -> '   C'
  247. 'Select': Select all songs
  248. 'Random': randomize the current sequence
  249. 'Stop'  : Clear the program and cancel the Program-Mode
  250. 'Play'  : Start playing with the first song in sequence
  251.  
  252. Random (V1.1):
  253. --------------
  254. Random is now available in normal play-mode.
  255. Simply press the RANDOM-Button and a program will be initialised!
  256.  
  257.  
  258. Auto-Fade (V1.1):
  259. -----------------
  260. This means, player fades the Volume on the last Pattern to zero.
  261. This is usefull, if an endless song is played!
  262.  
  263.  
  264. How to change directory:
  265. ------------------------
  266. Press Stop and then Open (on the disc-drawer)
  267. Now Player asks again which directory you want!!
  268.  
  269. V1.1: If your machine works under Kickstart 2.0, you can make this with the
  270.       ASL-Requester!
  271.  
  272. How to use the Analyser:
  273. ------------------------
  274. There are four buttons!!
  275.  
  276.    ++     <-  Mode
  277.  
  278.    ++     <-  Analyser On/Off
  279.  
  280.    ++     <-  VU-Meter On/Off
  281.  
  282.   ++++    <-  Power-Switch
  283.  
  284. Mode:   I calculate which part of a sample is played each vertical blank.
  285.     Each of the 4 windows shows 40 values of the actual part.
  286.     The parts are often larger then 40 bytes and so i've found two
  287.     ways to show them
  288.       Released Button:
  289.         I show the first 40 bytes of the actual part then i add the
  290.         length of the remaining part.
  291.         (Good to display high frequences!)
  292.     Pressed Button:
  293.         I calculate the length of the part diveded by 40. Now I show
  294.         the first byte then a add the result of the upper expression.
  295.         Then i show the next byte and so on...
  296.         (Good to display low frequences!)
  297.               
  298.  
  299. Information for musicians:
  300. --------------------------
  301.  
  302. I have included the information-system from IntuiTracker!!
  303. You can use the samplenames for messages.
  304. Each message (samplename) starting with '#' is displayed.
  305. Player stops at the first samplename which begins not with '#'!!
  306.  
  307.  
  308. Now some tactical hints using Player:
  309. -------------------------------------
  310.  
  311. Player checks each file if it's a ST-Module.
  312. It's possible (0.0001%) that the check-routine failes and he tries to play
  313. a file which is not a ST-Modules! Please remove this file from your 
  314. directory for safe usage!!
  315.  
  316. Using powerpacked Files requires the PowerPacker.library in libs: !!!
  317.  
  318. If you have only 512KB ChipMem use the -s option (MAXCHIP) to leave free Mem!
  319. e.g.: -s200 (I've always used this one, but now I've 1MB-Chip!!)
  320.  
  321. Player always allocates the size of the largest modules, because there are
  322. many troubles always freeing a block and allocating the next one.
  323. Memory get's more and more fragmented, until Player is not longer able
  324. to allocate the songmem!! I think this solution is better for longtime
  325. usage and always remember Amigas with fewer then 1MB-Chipmem are ...
  326. (Try Intuitracker, he uses the other way. After about 10 Songs it's over!!)
  327.  
  328. If you are running MACHIII V3.0 get a version V3.1 or higher, cause of a
  329. major bug in V3.0. Every time you will run Player while MACHIII is running,
  330. your machine will stop every activity without a guru!!
  331. First I've thought that it was my fault, but after it works with V3.1 ...
  332.  
  333. Player needs much time in his VB-interuptroutine. It's possible that you get
  334. in trouble running other programms using VB-Int's too. (I haven't recognized
  335. any problems of this nature, but it's possible!!).
  336.  
  337.  
  338.  
  339. AND NOW SOME HINTS FOR VERY EXPERIENCED USERS ONLY!
  340. ---------------------------------------------------
  341.  
  342. Player is able to run objectmodules! But take care, it's up to the module
  343. to work with Player!!!
  344. You ask why? There are many other good soundprograms available on AMIGA
  345. (for example SoundFX,TFMX..). If you got an executeable file which playes the 
  346. song rename it into 'run.???????'. When Player recognizes such a file
  347. he tries to load it with 'loadseg()' and jumps directly into it's code!!
  348. Now it's your problem how you stop playing and return to Player!
  349.  
  350. There is another problem with this feature!
  351. I have to give back all my memory starting the Obj-Mod.
  352. And after all I must get it back!! Do you know what I mean?!?!
  353. No! It's quiet simple!! It's possible that there isn't enough memory left
  354. after this action! Player will then quit playing!!!
  355. That's why I'm always allocating the lenght of the largest Module!!!!
  356. Because that's the only way to be sure not running out of memory!
  357. So please hold your memoryconsumtion low (use -s option. Usually I use -s200!!)
  358.  
  359. I have found a new problem since Player makes an own precess!!!
  360. Some playroutines test if the process is started from CLI. If not they wait
  361. for a WB-Message!!! It's on you to remove this part of the code!!
  362. A little hint: look out for a FindTask(0L) (sub.l a1,a1; jsr -294(a6))
  363. then look if the programm tests 172(a?) of the process-structure.
  364. Remove exactly this test! But be careful. The code must always go the way
  365. it goes started from CLI!
  366.  
  367. But after all that troubleshooting I have to say you: I did it!!!
  368.  
  369.  
  370. Informations about the Programm:
  371. --------------------------------
  372.  
  373. Start of coding:    April 1990
  374. SourceCode:        130kB - pure assembler-source (~6500 Lines)
  375. ObjectCode:         32kB
  376. Assembler:        ASM-One (in the beginning Masterseka 1.80)
  377. GFX:             45kB - 3 Planes,Hires(640*170) (also pixled by me)
  378.  
  379.  
  380. Warning:
  381. --------
  382.  
  383.                       I give no garantees using Player.
  384.              System crashes and other unkown bugs are possible!!
  385.                         Use Player on your own risk!!!
  386.  
  387. Player only reads data! It's impossible that Player
  388. destroys data on a Disk or HD. (only in your RAM, HeHeHe!!)
  389.  
  390.         All my friends are using Player since Summer 1990 with their HD and
  391.                            they have no problems!!
  392.  
  393. But nobody is perfect!! And my name is certainly not 'Nobody'!
  394. So please let me know all the bugs you notice!!
  395.  
  396. Last but not least thanks to:
  397.  
  398.         Michael Matzl, Reinhard Franz,
  399.         Erwin Kloibhofer, Dieter Henkel
  400.         and some members from the 'D.E.R. Computerclub'
  401.  
  402. for testing, bugreports good ideas and very good friendship.
  403.  
  404. Contacts:
  405. ---------
  406.  
  407. write to:    Wolfgang BREYHA
  408.         Gro▀er Ring 42
  409.         1130  Vienna
  410.         Austria            (not Australia, no Kangaroos!!
  411.                      we are those with Lipizaner you know)
  412.  
  413. E-Mail:        ookummer@swwwnext.tuwien.ac.at
  414.  
  415.